<参考> gitとgithub

img/image.svg

img/image.svg

<このページで覚えてほしいこと>

4つだけ!

VSCodeの下の部分(ターミナル)でプログラムをセーブ(保存)しておくときのやりかた

コマンド 内容
git init セーブ機能を使えるようにするよ
git add . 仮セーブ
git commit -m “コメント” コメントをつけてパソコンに保存
git push origin main インターネット上にセーブ

例えばこういうプログラムがあったとします。

img/image.svg

下の「ターミナル」の部分に、これを入力してエンターすると、セーブ機能が使えるようになります!

img/image.svg

git init

次にドルマーク($)の右にこのコマンドを打つと、正式なセーブ前の「仮の」セーブ(保存)ができます。

img/image.svg

git add .

仮セーブのあとは本セーブをしましょう。どんなコードかコメントをつけてセーブできます。

img/image.svg

git commit -m "コメント"

パソコンにセーブはできたので、インターネット上の「github(ギットハブ)」というサイトに保存できます。(これをやるにはちょっと設定が必要です。詳しくは↓をチェック)

img/image.svg

git push origin main

これより下の内容は、覚えなくていいです!上の部分も、今はわかんなくても全然問題ないです!

え?こんなことしなくても保存されてね?

とちょっとでも気になった人は下の内容をチラ見してみて、わかりそうだったらガチ見してみましょう。


gitとは? バージョン管理システム

絵を書いていて、こんなことないですか?

①なんとなく絵を書いてみる

img/image.svg

②なんか、耳ちがくね?とふと思い、消しゴムで消して書き直してみる

img/image.svg

③あれ、最初に描いてたやつがよかったんじゃね?ということで書き直してみるけど、

img/image.svg

④全然前みたいにかけない。。。(泣)

img/image.svg

gitを使うと、時間を戻せる!

ゲームのセーブポイントのように、

これらのセーブポイントで別々のセーブデータを作っておくと、例えば「ラスボス強くて勝てない!隠しアイテムを取っておいたら勝てるのに!」というときに、わざわざ最初からゲームをニューゲームで始めなくても、隠しアイテム前のセーブデータから始めればいいわけです。

gitのセーブもこれと同じで、いつでも戻れるセーブポイントを作ることができます。

さっきのリッキーマウスをプログラムにしてみましょう。顔の機能と、耳の機能をpythonで開発しています

# 顔機能
print("り")

# 耳機能
print("ミッキーの耳は大きめのマルの形が最高にかっこいいよね!")

とりあえず一旦セーブしておきましょう

git add .
git commit -m "ミッキーの耳いいよね"

ここでgitのコマンドを打つと、こんな表示が出ます。この下線の部分が、セーブデータを表す文字です。

img/image.svg

でもここで、「うーん、なんか違うよね。。。」と思って、思い切って耳をギザギザ耳に変更します。

# 顔機能
print("り")

# 耳機能
print("ギザギザ耳のほうがいいかも")
git add .
git commit -m "ギザギザ耳にしてみた"

ここで問題発生です。「なんか、ミッキーみたいな耳のほうがよくね?」と、上司リッキーに言われました。でも、耳の部分のコードは、ギザギザ耳にしたときに消してしまいました。書くのも面倒だし、ぶっちゃけ長くて全部は覚えてません。

ここでgit君の出番です。先程の赤線の部分の記号を使って、こんなコマンドを打ってみます。

git reset --hard 43b74d3

するとあら不思議、もとのみっきーリッキーが復活しています

img/image.svg

こんな感じで、いつでも気楽に過去に戻れるのがgitのいいところです。

gitを使うと、バージョン同士の合体ができる!

2つのバージョンのリッキーマウスを作って、バージョン同士を合体して、いいとこ取りをすることができます。

以下の例は、実際の漫画家さんと、そのアシスタントさんが,実際にgitを使って行うやり取りです。(プログラマー以外でも、漫画家やデザイナーさんでgitを使う人も多いんです)

①絵の背景を書くのがうまいアシスタントさんがいたので、背景をガンガン書いてもらいます

②漫画家の先生がリッキーのキャラをガンガン描きます。

③2つのファイルを見て、「あれ、この背景とこのリッキー合わせたらめちゃ良いコマできるんじゃね?」となる

④合体!!

これをpythonコードで、gitを使ってやると、「ブランチ」というものが出てきて、ちょっとややこしくなるのでここでは省略しますが、「へーそんなことできるのね」程度に思っておいてください。後ほど出てくるかも??


github(ギットハブ)ーみんなのセーブポイントをインターネットで見せ合って、自由にダウンロードできるようにしようぜ!

リッキーがゴールデンウィークで1時間くらいかけて作った、pythonで作ったマイクラもどきゲームを紹介するぜ!

https://drive.google.com/file/d/1E_7ZZKt-oyO0EfnuvArq7-pSBeUWMU7c/view?usp=drive_link

このゲームには以下の様な、いろんなものが含まれていて、ゲームを動かすためには一つでも欠けていると動きません。

これをみなさんのパソコンで動かそうとしたときに、画像ファイルなどをいちいちダウンロードしたり、pythonコードをコピペしたりするのは超大変です。

そこで、githubという、gitでセーブしたデータをいろんな人と共有できるサイトがあります。早速そのサイトを使って、皆さんのパソコンでゲームを動かしてみましょう。

まずはこのリンクをクリック

https://github.com/ricky-sensei/python_minecraft

こんな感じのページなので、赤枠のところのボタンをクリックして、ゲームのURLをコピーします。

img/image.svg

VSCodeにもどります。

ファイル→フォルダを開く から、「火曜日」フォルダを開きます

img/image.svg

ターミナルを開き、次のコードを入力します

git clone https:\\----

https://—- のところは、先程コピーしたURLが入るので、ctr + Vでペーストすればいいです

img/image.svg

エンターキーを押すと、githubのダウンロード(クローン、という言い方をします)が始まります。

しばらくすると、火曜日フォルダの中に、「python_minecraft」というフォルダができているはずです。先ほどと同じように、「ファイル」→「フォルダを開く」から、「python_minecraft」というフォルダを開きましょう。

これでプログラムや画像データなど、必要なファイルはほとんど手に入ったのですが、あとひとつ、「パッケージ」というものをダウンロードする必要があります。詳しくはのちほど出てきますが、とりあえずターミナルを開いて、次のコマンドを打ってください

pip install -r requirements.txt

これで準備OK!python_minecraftフォルダの中にある、game.pyというpythonファイルを実行すれば、ゲームがうごかせる。。。はず!!

githubの使われ方

主なgithubの使い方としては

などなどです。よく、インディーズ(メジャーな会社ではない、個人制作の)ゲームなどが、githubを通して公開されたりしています(FridayNightFunkinなどが有名)